CSS之inherit,initial,unset,revert 你真的了解吗?? |
您所在的位置:网站首页 › width auto是什么意思 › CSS之inherit,initial,unset,revert 你真的了解吗?? |
这是我参与11月更文挑战的第28天,活动详情查看:2021最后一次更文挑战 背景学习前端三个月了,准备刷刷面试题,总结总结,一天几道面试题,向大厂进军。 这期我们讲一下CSS全局关键字属性值。 inheritinherit 这个关键字是继承的意思。从IE8开始支持。 inherit 是一个实用性和兼容性都非常好的CSS属性值,例如我们使用inherit 关键字充值输入框的内置字体。 input,textarea{ font-family:inherit; }又比如:子元素设置height:inherit实现高度继承等。 我们来看看下面代码,具体实现下看看效果: .content { position: relative; width: 100px; height: 100px; background-color: red; color: black; font-size: 20px; margin: 30px auto; } .test1 { position: absolute; width: inherit; height: inherit; background-color: inherit; color: #fff; left: 120px; } 父DIV 子DIV效果如下: initial 是初始值关键字。可以把当前的CSS属性的计算值还原成CSS语法中的规定初始值。 我们来看个例子:主要修改font-Size .content { position: relative; width: 200px; height: 200px; background-color: red; color: black; font-size: 50px; margin: 30px auto; } .test1 { position: absolute; width: 200px; height: 200px; background-color: inherit; color: #fff; //我们看这里,我们使用的是初始值 font-size: initial; left: 220px; } 父DIV 子DIV效果如下: 如果我们子div不设置font-size,默认会继承父div的font-size:50px。 当我们设置子div的font-size为initial后,字体大小使用的就是CSS规范中定义的初始值,这个初始值为medium,默认16px。 实际用途: 我们要充值某些CSS样式,但是又不知道默认初始值是什么的时候,我们可以设置initial。 误区: 很多人可能有这样一个误区,把initial 关键字理解为浏览器设置元素的初始值。其实不是,一定要记住,initial代表的是CSS属性的初始值。 比如:实际开发中,我们一般会把 元素或者 元素默认的list-style-type样式重置。但是很有可能,我们在某些区域需要再次重新使用list-style-type样式(小圆点或者数字),这个时候有些开发者就会使用关键字initial进行还原,这个是不正确的。 ol{ padding:initial; list-style-type:initial; } //设置上以后没有用,上面的css等同于下面的CSS ol{ padding:0; //这里 list-style-type:disc; //这里 } //我们预想应该是这样的: ol{ padding:0 0 0 40px; list-style-type:decimal; }这种情况我们应该使用关键字 revert,而不是 initial unsetunset 是不固定值关键字,特性如下: 如果当前使用的CSS属性具有继承特性,等同于 inherit关键字 如果当前使用的CSS属性没有继承特性,等同于 initial关键字一般是配置 all来进行批量重置,才更具有意义。 具体使用场景: 例如: Chrome浏览器支持元素,我们一般使用元素实现语义更好弹窗组件。但是我们又不想使用内置的样式。 样式很多,我们不可能一个一个去重置,这个时候 all:unset就派上用场了,可以进行批量重置。 dialog{ all:unset; ... //自己设置自己需要的样式 } revertrevert 关键字可以让当前元素的样式还原成浏览器内置的样式。 我们来测试一下:我们给全局 标签设置 list-style-type:none。然后我们在某一个局域区域又想使用它默认的样式小圆点。(测试来源于火狐浏览器) ol { position: relative; color: black; width: 500px; font-size: 50px; margin: 30px auto; list-style-type: none; } .content { //局部区域恢复使用默认样式 list-style-type: revert; } 测试1 测试2 测试3 测试4 测试1 测试2 测试3 测试4一步一步慢慢来,踏踏实实把活干! |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |